package com.lbssoft.gpsbd.service;

import com.lbssoft.gpsbd.model.Geofence;
import com.lbssoft.gpsbd.model.Result;
import com.lbssoft.gpsbd.model.vo.GeofenceDevicesParam;

/**
 * Created by nczc on 2018/8/17.
 */
public interface GeofenceService {
    /**
     * 创建围栏
     * @param geofence
     * @return
     */
    Result add(Geofence geofence);

    /**
     * 更新围栏
     * @param geofence
     * @return
     */
    Result update(Geofence geofence);

    /**
     * 删除围栏
     * @param id
     * @return
     */
    Result delete(long id);

    /**
     * 获取用户下所有围栏
     * @return
     */
    Result list();

    /**
     * 围栏绑定设备
     * @param param
     * @return
     */
    Result bindDevices(GeofenceDevicesParam param);

    /**
     * 围栏解除绑定设备
     * @param param
     * @return
     */
    Result unbindDevices(GeofenceDevicesParam param);

    /**
     * 获取围栏绑定的设备
     * @param id
     * @return
     */
    Result getDeviceIds(long id);
}
